package plugins.defaultPlugin;
import java.awt.Color;
import java.awt.GridLayout;

import java.awt.Font;
import java.io.File;

import javax.swing.*;

import annotation.Menu;

import interfaces.*;

public class DefaultPlugin implements PluginInterface {

	boolean parDefaut =true;
	
	
	@Menu(libelle="plugin1(default)")
	@Override
	public JPanel getFrameDetail() {
		
		JPanel p = new JPanel();
		p.setLayout(new GridLayout(10, 3));
		p.add(new JLabel("Details       : Plugin 1 (default)"));
		p.add(new JLabel("Version     : "+getVersion()));
		StringBuilder extension = new StringBuilder("");
		for(String e : getExtension())
			extension.append(" | "+e);
		p.add(new JLabel("Extension : "+extension));
		if(isDefault())
			p.add(new JLabel("par défaut  : Oui"));
		
		return p;
	}
	
	@Override
	public JFrame getFrame(File o) {
		
		JFrame f = new JFrame("Plugin par Defaut de Test");
		JPanel p = new JPanel();
		JLabel l = new JLabel("Un premier plugin par défaut !!!");
		l.setFont(new Font(Font.SANS_SERIF, Font.BOLD, 30));
		l.setForeground(Color.WHITE);
		p.setBackground(Color.black);
		p.add(l);
		f.setContentPane(p);
		f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
		f.setBounds(0, 0, 600, 600);
		f.setVisible(true);
		
		return f;
	}

	

	@Override
	public String getVersion() {
		
		return "1.0";
	}

	@Override
	public String[] getExtension() {
		
		return new String[]{"default"};
	}

	@Override
	public boolean isDefault() {
		
		return parDefaut;
	}

	
	@Override
	public void setDefault(boolean bool) {
		parDefaut = bool;
		
	}

	@Override
	public ImageIcon getIcon() {
		return new ImageIcon("../Plugin/bin/plugins/defaultPlugin/DefaultPlugin.png");
	}
	
	

}
